/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package main;

import comunicacao.RmiClient;
import comunicacao.RmiClientApp;
import entities.Resposta;
import java.util.ArrayList;
import java.util.Map;
import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;

/**
 *
  * @author Leonardo Lino Nº45340
 * @author Diogo Pires Nº40351
 */
@ManagedBean
@RequestScoped
public class ListaTeatros {
    
    private String test;
    private ArrayList<String> lista;
    private int numTd;
    private int estado;
    private int clientID;

    /**
     * Creates a new instance of ListaTeatros
     */
    public ListaTeatros() {
        
    }
    
    public void preRender(){
 
    }
    
    @PostConstruct
    public void carregou(){
        
         FacesContext fc = FacesContext.getCurrentInstance();
        String clientStr
                = (String) fc.getExternalContext().
                getRequestParameterMap().get("client");
        
       Principal prin = (Principal) FacesContext.getCurrentInstance()
                    .getExternalContext().getSessionMap().get("principal"); 
          clientID = prin.getClientID();
          
        RmiClientApp rmiClient = new RmiClientApp();
        rmiClient.selectorAppServer(prin);
        
 
        Resposta resposta = rmiClient.listaTeatros();
        
        if (resposta==null)
            System.err.println("resposta esta null");
        
        estado = resposta.getEstado();
        
        if (resposta.getEstado() == Resposta.ESTADO_AVAILABLE){
            lista = resposta.getTeatrosLista();
            
        } else if (resposta.getEstado() == Resposta.ESTADO_BUSY){
            lista = null;
        
        }else if (resposta.getEstado() == Resposta.ESTADO_FULL){
            lista = null;
        }
        
        
        
    }
    
    
    
  public String submit(Integer param) {
    System.out.println("Submit using value " + param);
    return null;
}
   


    public ArrayList<String> getLista() {
        return lista;
    }
    
    

    public void setLista(ArrayList<String> lista) {
        this.lista = lista;
    }

    public String getTest() {
        return test;
    }

    public void setTest(String test) {
        this.test = test;
    }

    public int getNumTd() {
        return numTd;
    }

    public void setNumTd(int numTd) {
        this.numTd = numTd;
    }

    public int getEstado() {
        return estado;
    }

    public void setEstado(int estado) {
        this.estado = estado;
    }

    public int getClientID() {
        return clientID;
    }

    public void setClientID(int clientID) {
        this.clientID = clientID;
    }
    
    
    
}
